// pages/category/index.js
import{request} from "../../request/index.js"
//这里使用ES7 的async await 需要这个,不能app.js全局使用,必须单独使用
//https://github.com/yangsuai/regeneratorRuntime
import regeneratorRuntime from '../../lib/runtime/runtime.js';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    leftMenuList:[],
    rightContent:[],
    Cates:[],
    currentIndex:0,
    scrolltop:0
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var self = this;
    //1 获取本地存储中的数据
    const Cates = wx - wx.getStorageSync("cates");
    //判断是否存在
    if (!Cates) {
      //不存在 去获取数据
      this.getCates();
    }else{
      console.log('检查数据')
      //判断数据是否过期,过期重新获取
      if(Date.now()-Cates.time > 1000*10){
        console.log('数据过期发起请求')
        this.getCates();
      }else{
        console.log('可以使用旧数据')
        this.Cates = Cates.data;
      }
    }
  },
  async getCates(){
    // request({ 
    //   url:"/categories"
    //   }).then((res)=>{
    //     this.Cates = res.data.message;
    //     //把接口的数据存入到本地存储中
    //     //小程序存什么类型的数据,取出就是什么类型的数据
    //     wx: wx.setStorageSync("cates", {time:Date.now(),data:this.Cates});

    //     let leftMenuList = this.Cates.map(v=>v.cat_name);

    //     let rightContent = this.Cates[0].children;

    //     this.setData({ leftMenuList, rightContent});
    // })
    const res = await request({ url: "/categories"});
        this.Cates = res;
        //把接口的数据存入到本地存储中
        //小程序存什么类型的数据,取出就是什么类型的数据
        wx: wx.setStorageSync("cates", {time:Date.now(),data:this.Cates});

        let leftMenuList = this.Cates.map(v=>v.cat_name);

        let rightContent = this.Cates[0].children;

        this.setData({ leftMenuList, rightContent});
  },
  // 点击事件绑定 e是事件原
  handleItemTap(e){
    const {index} = e.currentTarget.dataset;
   
    let rightContent = this.Cates[index].children;

    this.setData({
      currentIndex:index,
      rightContent,
      scrolltop:0
    })


  },
  
})